home *** CD-ROM | disk | FTP | other *** search
/ EnigmA Amiga Run 1996 February / EnigmA AMIGA RUN 04 (1996)(G.R. Edizioni)(IT)[!][issue 1996-02][Skylink CD III].iso / earcd / midi / hip211.lha / HiP.doc < prev    next >
Text File  |  1995-09-06  |  60KB  |  1,695 lines

  1. ******************************************************************************
  2.  
  3.                             *** HippoPlayer *** 
  4.  
  5.                   Programmed by K-P Koljonen 
  6.                  ** Hippopotamus Design ** 
  7.  
  8.             Copyright © 1994-1995 K-P Koljonen
  9.                              ** SHAREWARE **
  10.  
  11. ******************************************************************************
  12.  
  13.  
  14. HippoPlayer (HiP) is a multiformat module player for the Amiga.  It works
  15. perfectly under Kickstart 1.2 and has all the same and even more features
  16. than the players requiring Kick2.0+ to run.
  17.  
  18. One main reason why I started making this program was that there were no
  19. good Kick1.3 compatible players around, or I didn't know of one.  The other
  20. reason was that my good friend Jarno Paananen (Guru/Sahara Surfers) made a
  21. replay routine for Screamtracker ]I[ modules.
  22.  
  23. The aim was to make a good module player that works on every Amiga
  24. configuration and has lot's of USEFUL features.  To achieve speed, little
  25. size and memory usage, HiP is 100% assembler.  Project HippoPlayer was
  26. started 5.2.1994.
  27.  
  28. "Newcomers will run screaming away", said Nemesis1.
  29. At first HiP may seem complicated.  There's no familiar tapedeck symbols,
  30. only some bits of text scattered around.  Learn to use HiP, it should be
  31. worth the effort :)...
  32.  
  33. HiP has good support for Screamtracker ]I[, Fasttracker 1 & 2, Taketracker,
  34. and Multitracker modules (from here onwards referred as PS3Ms), meaning
  35. that you can listen them with a 68000 Amiga with listenable quality.  All
  36. are played by the famous replayer by Guru.  HiP was the second program to
  37. use the PS3M-routines after Guru's own player.
  38.  
  39.  
  40.  Some features:
  41.  · Screamtracker ]I[, Fasttracker 1 & 2, Taketracker, Multitracker, 1 to 32ch
  42.  · SID-emulation by Håkan Sundell & Ron Birk (works even on kick1.2)
  43.  · TFMX-modules, normal and the seven channel ones
  44.  · A bunch of 4-8 channel sample & synth music formats
  45.  · Easy to use, nice 3D-interface
  46.  · Keyboard control
  47.  · AppWindow
  48.  · ARexx 
  49.  · Public screen support
  50.  · Internal multitasking
  51.  · Loads and decompresses XPK, FImp, PowerPacker, LhA, LZX and Zip files
  52.  · Tested on:
  53.      A500/000, kickstart 1.2, 0.5+0.5m memory
  54.      A1200/030, kickstart 3.0/1.3, 2+4m memory (with enforcer)
  55.  
  56. HippoPlayer was/is developed on:
  57.     - v1.00-v1.25    A500/010, kickstart 1.3/3.1, 1+2M memory, HD
  58.     - v1.27-v1.40    A1200/020, kickstart 3.0, 2+0M memory, HD
  59.     - v2.00-v?.??    A1200/030, kickstart 3.0, 2+4M memory, HD
  60.  
  61.  
  62.  
  63. ******************************************************************************
  64. *                            *** Registration ***                     *
  65. ******************************************************************************
  66.  
  67. HippoPlayer is shareware and copyright © 1994-95 K-P Koljonen. 
  68.  
  69. If you like using HiP and would like to encourage me to continue developing
  70. and help me as well (as I'm a poor student :), you should consider
  71. registering.
  72.  
  73. To register, send a disk and some money (30-40 FIM or 7-9 USD or about
  74. equivalent amount of notes of other currencies or eurocheques) to my
  75. address found at the bottom of this doc.  Remember to mention your address!
  76. You will get the disk back with the latest version of HiP and a keyfile,
  77. which you MUST NOT SPREAD.  It is for your own use only.  This keyfile will
  78. work with possible future versions too.
  79.  
  80. Registering by e-mail is also possible.  Send the money by normal mail and
  81. I will mail you the keyfile.
  82.  
  83. There's no difference between registered and unregistered version!
  84.  
  85. Support quality software, register.
  86.  
  87.  
  88. Distribution
  89. ------------
  90. HippoPlayer can be freely distributed as long as all files are included
  91. unaltered.  Not for commercial use without a permission from the author.
  92.  
  93.  
  94. Mailing list
  95. ------------
  96. If you want to get new versions of HiP emailed directly into your post box,
  97. let me know.
  98.  
  99.  
  100. ******************************************************************************
  101. *                           *** Requirements ***                     *
  102. ******************************************************************************
  103.  
  104. Any Amiga with some memory and Kickstart 1.2 or higher.  Reqtools.library
  105. of any version will be needed for the requesters.  There is kick1.3
  106. reqtools.library included in the archive.
  107.  
  108. In order to...             you need...
  109. ------------------------------------------------------------------
  110. Load XPK files            xpkmaster.library and some sublibs
  111. Load PowerPacker files        powerpacker.library
  112. Load lha, lzx and zip files    to look at 'Archivers'
  113. Play SID files            PlaySID.library
  114. Play 4ch MED modules        medplayer.library v2+
  115. Play 5-8ch MED modules        octaplayer.library v2+
  116.  
  117. All libraries must be copied into Libs: drawer.
  118.  
  119. reqtools.library and powerpacker.library by Nico François.
  120. xpkmaster.library by Urban Dominik Müller (?).
  121. PlaySID.library by Per Håkan Sundell & Ron Birk.
  122. medplayer.library and octaplayer.library by Teijo Kinnunen.
  123.  
  124.  
  125. Installation
  126. ------------
  127. Copy HiP and one of the info-files wherever you keep your tools.  Also copy
  128. reqtools.library in libs:  if it's not there already.
  129.  
  130. Copy HippoPlayer.group into S:  or define the location in Prefs/Player
  131. group later.
  132.  
  133. Copy HippoPlayer.PS3M into S:  (take a look at 'PS3M configuration file').
  134.  
  135. The use of HiP-script is described in 'Archivers'.
  136.  
  137. ** NOTE:  If you're updating from an earlier version, you only need to copy
  138. HippoPlayer.group into S:!
  139.  
  140.  
  141.  
  142.  
  143. ******************************************************************************
  144. *                           *** Music formats ***                     *
  145. ******************************************************************************
  146.  
  147. Here's a list of the music formats HippoPlayer can play and what functions
  148. they support.  Also the authors of the replayers are listed.
  149.  
  150. Stop/Continue     = 1 - The music can be stopped and continued.
  151. Multiple songs    = 2 - Modules can have more than one song.
  152. Volume          = 3 - Volume can be controlled.
  153. End detect      = 4 - Songend can be detected.
  154. Forward/backward  = 5 - You can jump forwards and backwards in the song.
  155. CIA fast forward  = 6 - Play 2x or 4x faster with LMB/RMB and '>'
  156.  
  157. Replayer            123456     Author
  158. --------------------------------------------------------------------
  159. [** Built-in replayers **]
  160. David Whittaker            xx---x*     David Whittaker
  161. Delta Music v2.0        x-x--x*     Bent Nielsen
  162. Fred                xx---x*     Frederic Hahn & JC
  163. Hippel                xx---x*     Jochen Hippel
  164. Maniacs of Noise        xxx--x*     Maniacs of Noise
  165. Mark II                x----x*     Cachet Software
  166. MED 4-8ch (player libraries)    xx-xx-     Teijo Kinnunen
  167. Music Assembler            x-x--x*     Oscar Giesen & Marco Swagerman
  168. Old Soundtracker        xxxxxx     K-P Koljonen
  169. Protracker            xxxxxx     K-P Koljonen
  170. SID (player library)        xx--x-     Håkan Sundell & Ron Birk
  171. SIDMon v1.0            x----x*     Reiner van Vliet
  172. Sonic Arranger            -x----*     Carsten Schlote
  173. IFF 8SVX samples        --x---     
  174.  
  175. [** Replayers in player group file **]
  176.  
  177. BP SoundMon v2.0        x-xxxx      Brian Postma
  178. BP SoundMon v3.0 (v2.2?)    x-xxxx      Brian Postma
  179. Future Composer v1.0-v1.4    x-xx-x     SuperSero (of the Superions)
  180. Hippel-COSO            xxxx-x     Jochen Hippel
  181. JamCracker            x--x-x     M. Gemmel
  182. Oktalyzer            --xx--     Armin Sander
  183. PS3M                x-xxx-     Jarno Paananen
  184. TFMX                xxxxx-     Chris Hülsbeck
  185. TFMX 7ch            xxxxx-     Chris Hülsbeck & Jochen Hippel
  186. The Player 6.1A            x-x---     Jarno Paananen
  187.  
  188.  
  189.  
  190. The modules of formats marked with '*' have the replay code inside the
  191. module itself.  I can't guarantee will they work or not.  This is also the
  192. reason why they are not in the player group file (no replay code).
  193.  
  194. Most of the formats included are here just because I have some modules of
  195. them and I like to play them with HiP.  :)
  196.  
  197.  
  198. Player group (See Prefs)
  199. ------------
  200. Player group (HippoPlayer.Group) is a file consisting of above mentioned
  201. replayers.  The reason for this is that by moving seldom used replayers
  202. into a separate file memory usage is reduced by 40kB.  Not that much, you
  203. think.  But maybe just enough to prevent some actions from happening on low
  204. memory systems/situations.
  205.  
  206.  
  207.  
  208. Loading files
  209. -------------
  210. Normally all modules will be loaded in CHIP.  SID-, Oktalyzer- and PS3M-
  211. modules and TFMX song data will be loaded in FAST RAM if possible.
  212.  
  213. All compressed files will be loaded in CHIP.  However, it's possible to
  214. uncompress some kilobytes from the beginning of an XPKed file, and check if
  215. it is one of the above or a PT module that is to be played with PS3M or
  216. with fastram replayer.
  217.  
  218. Advantages of loading to FAST:
  219.     FAST RAM is much faster than CHIP, so mixing can be done faster.
  220.     CHIP RAM is saved if the module can or should be loaded in FAST.
  221.  
  222. LhA, LZX and Zip files can be checked and will be loaded in FAST if
  223. necessary.
  224.  
  225. If you set Doublebuffering on and Continue on error off, HiP will, after an
  226. open error, continue to play the module that was being played before the
  227. error.
  228.  
  229.  
  230.  
  231. Protracker
  232. -----------
  233. The most popular music format on the Amiga.  HiP features my own Protracker
  234. play routine.
  235.  
  236. - Multisong modules
  237. There are some modules around with several songs separated by the B
  238. command.  HiP allows you to play these kind of modules correctly.  Just use
  239. the 'PS' and 'NS' gadgets (or the respective keys) to select different
  240. songs.  The only player that supports this feature, by the way :)
  241.  
  242. - Fast ram player
  243. This player can play PT modules from FAST RAM using only 1024 bytes of CHIP
  244. RAM.  Useful for very big modules.  CPU usage on my A1200/030/28Mhz is
  245. about 2-3%, and on my little brother's A500/000 about 15%.
  246.  
  247. - Old Soundracker modules
  248. HiP identifies old Soundtracker modules and converts them to the Protracker
  249. format.  This will take memory temporarily twice the module size, but I
  250. don't think it's a big problem because old ST tunes tend to be very small.
  251.  
  252.  
  253.  
  254. TFMX
  255. ----
  256. HiP can play both 4 and 7-channel TFMX modules, including the excellent
  257. Turrican 1, 2 and 3 intro tunes.  A TFMX module consists of two files.
  258. They must be named 'mdat.<name>' and 'smpl.<name>'.  To play, select
  259. 'mdat.<name>'.  HippoPlayer will then try to load the 'smpl.<name>' file.
  260.  
  261. The mixing rate of TFMX 7 channel replayer can be changed.  The bigger
  262. value, the better quality and bigger CPU load.  If you lose some notes or
  263. hear 'crackling' in the sound try lowering the mixing rate.
  264.  
  265.  
  266.  
  267. PS3M 
  268. ----
  269. (Screamtracker ]I[, Protracker, Fasttracker 1 & 2, Taketracker, Multitracker)
  270.  
  271. Jarno Paananen (Guru/Sahara Surfers) has made replayers for these.  It is
  272. able to play 1-32 voices simultaneously by mixing them through four
  273. channels.  The mixing routine is amazingly fast, even on Amiga 500 8
  274. channel modules are very listenable.  The replayer gobbles quite a bit of
  275. memory for it's buffers, so don't be surprised.
  276.  
  277. Mixing rates can be changed.  Again, the bigger value, the better quality
  278. and bigger CPU load.  Using the system friendly mode on A500 will probably
  279. more or less jam the machine, therefore you should use the killer mode for
  280. the best quality. 
  281.  
  282. PS3M allows mixing rates higher than 28 kHz, which is normally the hardware
  283. limit.  In some AGA (ECS too?) screenmodes higher mixing rates are
  284. possible.  This is what I found out after some experimenting.  I used
  285. maximum overscan.
  286.  
  287. Maximum mixing rates for screenmodes:
  288.  
  289. PAL..........28 kHz        
  290. NTSC.........28 kHz
  291. Euro36.......28 kHz
  292. DblPAL.......54 kHz
  293. DblNTSC......54 kHz
  294. Euro72.......58 kHz
  295. Multiscan....58 kHz
  296. Super72......46 kHz
  297.  
  298. NOTE:  If you use too high a mixing rate, the sound will be distorted.
  299.  
  300. Killer mode WILL cause enforcer hits!  It bangs some of the interrupt
  301. vectors.  Don't use enforcer with killer mode.
  302.  
  303. These modules can and should be played from FAST RAM.
  304.  
  305. Play mode
  306. - - - - -
  307. Surround    Play some of the right side on the left and vice versa.
  308.         The stereo value can be adjusted with the stereo slider in Prefs.
  309.         50% is normal surround, 0% is mono and 100% is stereo.
  310. Stereo        Stereo, play half of the channels on left and half on right.
  311. Mono        Mono, play all channels on both sides.
  312. Real Surround    About the same, but uses more memory.
  313. 14-bit stereo    BEST QUALITY, biggest CPU load, largest memory usage and
  314.         lowest volume level.
  315.  
  316. The best play mode for most situations is Stereo.  For modules with lot's
  317. of channels use 14-bit stereo.
  318. You can play modules in stereo or in mono with Surround play mode by
  319. adjusting the stereo value.  The difference between this and the real Mono
  320. and the real Stereo modes is lower volume level.
  321.  
  322.  
  323. PS3M configuration file
  324. -----------------------
  325. It is possible to control PS3M via config file:  'S:HippoPlayer.PS3M'.  HiP
  326. will configure PS3M according to the config file every time a module is
  327. loaded.
  328. In HippoPlayer.PS3M you can enter PS3M settings for each number of channels
  329. and for specific modules.  You can even choose which CIA timer PS3M will
  330. use for timing (defaults to CIAA).
  331. In channel and song settings you may replace the number you don't want to
  332. alter with ?'s.  Useful when you want to control the mixing rate from HiP
  333. and the volume boost the PS3M from config file.
  334. The file is quite self-explanatory so you should be able to edit it with no
  335. problem.
  336. If you don't want to use the config file you can delete it from S:  or
  337. disable it (there's a enable/disable flag in the file).
  338.  
  339.  
  340. SID
  341. ---
  342. These are tunes ripped from C64 games & demos.  Both normal file + icon and
  343. one file formats are supported.  The playing is done by PlaySID.library by
  344. Håkan Sundell and Ron Birk.  Great job dudes!
  345.  
  346. *** Note!  Under Kickstart 1.2/1.3 playsid.library v1.1 does not work
  347. because it uses some Kick2.0+ functions.  I have made a little patch to
  348. bypass the problem.  This patch works ONLY with lib version v1.1 and
  349. Kick1.2/1.3.
  350.  
  351.  
  352.  
  353. IFF samples
  354. -----------
  355. HiP is currently able to play IFF 8SVX unpacked mono samples directly from
  356. disk, using 64kb chip memory for buffers.  With slow media and high
  357. sampling rate might not work very well, because the sample is loaded in
  358. chunks of 32 kilobytes.
  359.  
  360.  
  361.  
  362. ******************************************************************************
  363. *                     *** Gadgets & keyboard controls ***                    *
  364. ******************************************************************************
  365.  
  366. Keyboard shortcuts are bracketed.  The keys work from both main window and
  367. prefs window.
  368.  
  369.  New    Clear the module list, select new modules and play the first one.
  370.  
  371.  Play    Load and/or play selected module. If nothing selected, pop up
  372.     file requester. [RETURN/ENTER]
  373.  
  374.  Cont    Continue playing after stop.
  375.  
  376.  Stop    Stop playing.
  377.  
  378.  Eject    Stop playing and free current module. [TAB]
  379.  
  380.  Prev    Load and play previous module. [K]
  381.  
  382.  Next    Load and play next module. [L]
  383.  
  384.  PS    Play previous song. [ARROW LEFT]
  385.  
  386.  NS    Play next song. [ARROW RIGHT]
  387.  
  388.  <    Backward, jump to previous pattern. [,]
  389.  
  390.  >    Forward, jump to next pattern. [.]
  391.     If the module format supports pos/len, LMB with '>' jumps to
  392.     next pattern and RMB '>' doubles the playing speed.
  393.     If the format doesn't support pos/len, then LMB '>' will double
  394.     the playing speed, and RMB '>' will quadruple the playing speed.
  395.     To get the normal playing speed press 'Cont' or '>' again.
  396.     Key for RMB '>' is shift ',' or shift '3' in number pad.
  397.     
  398.  Add    Add modules to the end of the list, pop up the file requester. [A]
  399.     When adding files to the list you can also add directories.
  400.     With Kick2.0+ HiP will perform a recursive directory scan adding all
  401.     files in dir to the list. With Kick1.2/1.3 only one sub dir is added.
  402.  
  403.  Add + right mousebutton [Q]
  404.     Add a list divider into the list.
  405.  
  406.  Del    Delete selected module from the list. [BACKSPACE]
  407.  
  408.  Clr    Clear the list. [D]
  409.  
  410.  Horizontal slider
  411.     Volume controller. [B][N]
  412.  
  413.  ?    Enter the info window. [HELP]
  414.       Sample names Displays sample names of MODs, S3Ms, XMs, FTMs and
  415.                MTMs.
  416.       SID-info     Information about SID-modules.
  417.  
  418.                Sample names or SID-info can also be invoked by
  419.                pressing left mousebutton on the leftmost third
  420.                        of the name/type box or the 'I' key. (When there's
  421.                        no info available the main info window will be opened.)
  422.  
  423.                Sample name and SID-info windows will be updated
  424.                if you keep them open and load a new module.
  425.  
  426.       Help           Description of gadgets & keyboard shortcuts.
  427.       About           About HiP...
  428.        Exit           Hmm..
  429.  
  430.  Pre    Pop up the prefs window. You can also close it with this button.
  431.  
  432.  Mo    Move the chosen module. [M]
  433.     Removes the module from list allowing you to move around.
  434.     To insert it back press Mo again or Play (or the keys).
  435.  
  436.  Mo + right mousebutton [F/SHIFT+F]
  437.     Find module according to given search pattern.
  438.     [F] asks for a pattern to be searched and [SHIFT+F] continues searching.
  439.  
  440.  In    Insert modules after the selected module. [I]
  441.     This is almost the same as 'Add'.
  442.  
  443.  In + right mousebutton [S]
  444.     Sort list alphabetically. With lot's of files this may be a
  445.     bit slow (bubble sort).
  446.  
  447.  Lp    Load module program. [P]
  448.  
  449.  Lp + right mousebuttton {[} (the key besides P)
  450.     Join a module program to the module list.
  451.     
  452.  Sp    Save module program. [W]
  453.  
  454.  The leftmost propgadget
  455.     Scroll module list.
  456.  
  457.  Windowclose-button [ESC]
  458.     Close all windows except requesters and exit.
  459.  
  460.  ** Other keys **
  461.  ARROW UP    Select previous module.
  462.  ARROW DOWN    Select next module.
  463.  SPACE        Toggle play/stop.
  464.  *, (next to RETURN) Randomize and play a module.
  465.  7,8,9,0    Show: time-pos/len-song number, clock-free mem, module name,
  466.         time/duration-pos/len.
  467.  Z              Toggles selected scope.
  468.  F1-F10        Load & play a module or a module prorgram.
  469.  `~ (next to 1)    Zip window (also shows when hidden).
  470.  
  471.  lamiga-lshift-control + h
  472.         Hides HiP and shows when pressed again.
  473.  
  474.  lamiga-lshift-control + 1
  475.         Zip window key for inactive window. 
  476.  
  477. *** Number pad ***
  478. [ ] / *      [ = del, ] = move, / = insert, * = play random
  479. 7 8 9 -      7 = play previous, 8 = select previous, 9 = play next, - = vol down
  480. 4 5 6 +      4 = prev song, 5 = stop/cont, 6 = next song, + = vol up
  481. 1 2 3 E      1 = rewind, 2 = select next, 3 = fast forward, enter = play
  482. 0 0 . E      0 = add files, . = load program, enter = play
  483.  
  484. *** Keyboard note ***
  485. Press lamiga-lshift-control-<key> to use the HiP-keys WITHOUT first
  486. activating the window.  This is one of the two ways (the other is ARexx) to
  487. control HiP when it is hidden!  Pressing zip window this way will bring the
  488. window to front and activate it.
  489.  
  490. *** File requester note ***
  491. HiP uses the great reqtools-requesters.  To select multiple files click
  492. files with shift pressed!  You can also select directories when 'Add'ing or
  493. 'In'serting.
  494.  
  495.  
  496. Filebox
  497. -------
  498. Here you can see the module list.  You can select a module by pressing the
  499. left mousebutton on it or by pressing arrows up and down.  The selection
  500. bar will be kept visible.  If 'Center name' is set, it will be centered.
  501.  
  502.  
  503. Right mousebutton
  504. -----------------
  505. Pressing the right mousebutton or the respective key will shrink the window
  506. so that only the titlebar will be shown.  Press again on the activated
  507. window to expand.
  508. If you somehow lose the window, just load the program again.  If there
  509. already was one HippoPlayer running, it's window will be popped to front
  510. and expanded.  Also pressing lamiga-lshift-control+`~ will pop the window
  511. to front.
  512.  
  513.  
  514.  
  515.  
  516. ******************************************************************************
  517. *                              *** Prefs ****                     *
  518. ******************************************************************************
  519.  
  520. Here you can configure HippoPlayer by using the gadgets & buttons.
  521. Multiple choice requester can be invoked by pressing right mousebutton on
  522. the cycle gadgets.
  523.  
  524.  
  525.  
  526. Play
  527. ----
  528.  List repeatedly    Play module list over and over.
  529.  List once        Play list once stop.
  530.  Module repeatedly    Play one module over and over.
  531.  Module once        Play one module once and stop.
  532.  Modules in random order
  533.         Play modules in random order.
  534.         When playing has started, same module will not be played twice
  535.                 unless all modules have been played first.
  536.              
  537. 'Play'  affects  the  replayers  where  the end of the song can be detected
  538. from.
  539.  
  540.  
  541.  
  542. Show (titlebar information)
  543. ----
  544.  Time, pos/len, song    Show playing time, song position/length and
  545.             song number/max song (#n/n) depending of what kind
  546.             of a module is being played.
  547.  Time/duration, pos/len    This does exactly the same as above with all but
  548.             Protracker modules. If enabled, HiP will calculate
  549.             duration of PT modules and show it in the titlebar.
  550.  Clock, free memory     Show clock (24h) and free CHIP and FAST in kilobytes.
  551.  Module name        Show module name.
  552.  
  553.  
  554.  
  555. Screen
  556. ------
  557. Select a public screen.  All HiP's windows and requesters will be opened on
  558. the defined screen.  If the screen is not available, default screen will be
  559. used (usually Workbench).
  560.  
  561.  
  562.  
  563. Filebox size
  564. ------------
  565. Define the number of files showed simultaneously in the main window.
  566. Minimum is 3 and maximum is 50 (will need a BIG screen).  If the value is
  567. too big for the current screen, it will be truncated.
  568.  
  569.  
  570.  
  571. Scopes
  572. ------
  573. Select one of the scopes by clicking the type gadget and the bar gadget.
  574. The 'Scope on/off' button or 'z' key will start it up.  You can close a
  575. scope by closing it's window or clicking the gadget again.
  576.  
  577. These are for Protracker-modules only:
  578.  
  579. Quadrascope (& bars)
  580.  - This is just like the one in Protracker.  Channel order:  1,2,3,4.
  581. Hipposcope (& bars)
  582.  - Couldn't invent a better name..  Bass-sounds look nice with this one.
  583.    Channel order: 1,2,3,4.
  584. Frequency analyzer (& bars)
  585.  - This one's more processor intensive.  There is one for the left and the
  586.    right side. It is supposed to display frequencies while not using
  587.    period values. This is not FFT, but is based on Guru's strange idea...
  588.    Bass-sounds are on the left and treble-sounds on the right.
  589.    Bar channel order: 1,4,2,3.
  590. Patternscope
  591.  - Protracker-emulator... Shows pattern data, four fake VU-meters and four
  592.    tiny period boxes.
  593.    Channels: 1,2,3,4.
  594. F. Quadrascope (& bars)
  595.  - F. stands for filled. Inspired by Guru/S2's routine many years ago.
  596.    Channels: 1,2,3,4.
  597. Bars
  598.  - These will try to visualize the volume and the period of each channel.
  599.    The vertical position represents sample period and the width sample volume.   
  600.  
  601. There are almost the same scopes for PS3M:  Quadrascope (stereoscope,
  602. actually), hipposcope and frequency analyzer.  No bars.
  603.  
  604. The  scopes  will  need some kilobytes of memory for buffers.  They are run
  605. with priority of -30 so that they won't interfere with anything important.
  606.  
  607.  
  608.  
  609. Module directory
  610. ----------------
  611. Here you can enter your module directory or select it by pressing '?'.
  612.  
  613.  
  614.  
  615. Program directory
  616. -----------------
  617. Same as above but for saving module programs.
  618.  
  619.  
  620.  
  621. Player group
  622. ------------
  623. Status:     Player group loaded/not loaded.
  624. Mode:        Loading conditions
  625.         - Startup: load immediately on startup
  626.         - Demand: load when there is demand for the players
  627.         - Disable: don't load players and unload if already loaded
  628. File:        Player group file.
  629.  
  630. These can be changed from the gadgets.
  631.  
  632.  
  633.  
  634. Font
  635. ----
  636. Select a 8x8 pixel font (kick2.0+ only).  All fixed width and 8 pixel high
  637. fonts will be scanned and only those that are 8x8 pixel fonts are
  638. displayed.
  639.  
  640.  
  641.  
  642. Function keys
  643. -------------
  644. You can install a module or a module program for each of the function keys
  645. (F1-F10) by clicking this gadget.  Then when you press a fkey, the
  646. corresponding module program or module will be loaded and played.
  647.  
  648.  
  649.  
  650. Startup
  651. -------
  652. When enabled (with the checkbox left to alarm), HiP will start playing
  653. immediately on startup.  The module or the program to be played can be
  654. chosen by clicking the 'Startup' gadget.
  655.  
  656.  
  657.  
  658. Alarm
  659. -----
  660. Set a time for HiP to play a module (same as startup module).  The alarm
  661. time is given to requester as four digits.  First two are hours, last two
  662. minutes.  To enable alarm, set titlebar info to clock.  To re-enable alarm,
  663. switch titlebar info to something else and then back to clock.
  664.  
  665.  
  666.  
  667. Timeout
  668. -------
  669. Set playing time (mins:secs).  Disabled in the leftmost position.  Timeout
  670. can affect all modules or only those which the end can't be detected from.
  671. You can select this by pressing 'Timeout'.
  672.  
  673. Example:  Play Protracker-modules until they end and PSIDs for, say 3
  674. minutes.  Or you can play all kinds of modules for only 30 secs (intro scan
  675. :)
  676.  
  677.  
  678.  
  679. Priority
  680. --------
  681. Select a priority for HiP's processes:  -1, 0, +1.  All excluding the
  682. scopes are affected.
  683.  
  684.  
  685.  
  686. Filter control
  687. --------------
  688. Filter controlled by module, filter forced off or on.
  689.  
  690.  
  691.  
  692. PT replayer
  693. -----------
  694. Normal:  Use normal Protracker replayer to play modules from CHIP RAM.
  695. Fastram: Play PT modules from FAST RAM.
  696. PS3M:     Use Guru's PS3M to play modules from CHIP or FAST.
  697.      This way you can use those neat modes, eg listen Protracker
  698.      modules with real surround.
  699.  
  700.  
  701.  
  702. Protracker tempo
  703. ----------------
  704. Enable or disable Protracker tempo command.  Use on old modules that use
  705. speeds higher than $1F.  Applies also to The Player modules.
  706.  
  707.  
  708.  
  709. TFMX rate
  710. ---------
  711. Mixing rate for the 7-channel TFMX replayer.
  712.  
  713.  
  714.  
  715. Fade volume
  716. -----------
  717. This will cause those replayers that support volume to fade music in and
  718. out.
  719.  
  720.  
  721.  
  722. Hotkeys
  723. -------
  724. Enable/disable lamiga-lshift-control-<key> keys.  This is for preventing
  725. collisions with other programs that may be using the same key combination.
  726.  
  727.  
  728.  
  729. Doubleclick
  730. -----------
  731. When enabled, a module can be loaded and played by doubleclicking on it.
  732.  
  733.  
  734.  
  735. Center name
  736. -----------
  737. When enabled, chosen module will be centered in the filebox.
  738.  
  739.  
  740.  
  741. XPK identify
  742. ------------
  743. When on, all XPKed files will be checked if they should be loaded in FAST
  744. memory.  You should set this if you listen to modules played by PS3M.
  745.  
  746.  
  747.  
  748. Continue on error
  749. -----------------
  750. Errors that occur while loading will be ignored, file will be skipped and
  751. the next one will be loaded.  After five errors the procedure will be
  752. halted.
  753.  
  754.  
  755.  
  756. Doublebuffering
  757. ---------------
  758. Normally when loading a module the one that is playing is ejected.  With
  759. this button you can force HiP to play the current module and load the next
  760. one at the same time.  Useful for floppy users, no delays between playing.
  761. If there's not enough memory to hold two mods at the same time the one that
  762. is played will be ejected before loading.
  763.  
  764.  
  765.  
  766. Nasty audio
  767. -----------
  768. Select allocation priority of the audio channels.  When on, no program
  769. except HiP can use the channels.  PS3M uses maximum priority at all times.
  770.  
  771.  
  772.  
  773. VBlank timer
  774. ------------
  775. Select timing method to be used for playing: VBlank or CIA timer.
  776.  
  777. Use this switch if you don't want HiP to use one of the two CIAA timers.
  778. VBlank plays with wrong speed on non-50Hz screens.
  779.  
  780. This switch has no effect on the following:  PS3M, SID, Sonic Arranger,
  781. TFMX, TFMX 7c, MED, The Player 6.1a.  They use their own way of timing.
  782.  
  783. Tempo will be disabled when playing PT mods with VBlank timer.  Double and
  784. quadruple playing speeds are disabled when using VBlank.
  785.  
  786.  
  787.  
  788. Divider / dir
  789. -------------
  790. When adding directories, it is sometimes useful to have a list divider for
  791. each scanned directory.  This switch does just that.
  792.  
  793.  
  794.  
  795. Prefix cut
  796. ----------
  797. Select filename prefix cut.  Value 3 will cut prefixes like "mod.", "xm."
  798. etc.  from the names in the filebox.
  799.  
  800.  
  801.  
  802. Early load
  803. -----------
  804. Select a pattern from end to start loading next module.  Works with formats
  805. supporting position/length.
  806.  
  807. Currently this is quite a lame function, because the newly loaded module
  808. starts to play immediately.
  809.  
  810.  
  811.  
  812. Archivers (LhA... LZX... Zip...)
  813. ---------
  814. HiP can decompress and play LhA, LZX and Zip files.  You need to specify a
  815. path, a command and options for each.
  816.  
  817. LhA, LZX and Zip archives will be extracted into a file right after '>'
  818. (for LhA and Zip this is output redirection).  The %s means the name of the
  819. archive to be opened.  The output file can be placed somewhere else than in
  820. RAM:  if you don't have enough memory.
  821.  
  822. You need: LhA, LZX or UnZip, according to what kind of packed files you have
  823.       (be sure they really are where you defined them to be),
  824.       and 'Run' command in C:. LZX also needs 'C:Execute' and 'S:SPAT'.
  825.  
  826. These kind of files are identified by checking the name.  LhA files have
  827. suffix '.lzh' or '.lha', LZX files '.lzx' and zip files '.zip'.
  828.  
  829. ** Hint **
  830. - Archived files may be packed with XPK, FImp or Powerpacker.  For example,
  831. you could use xpkDLTA to encipher a module and then LhA it.  Gives very
  832. good compression of sound related data.
  833.  
  834. ** LhA hint **
  835. - You can store both TFMX mdat.  and smpl.  files in one archive!  Just
  836. remember that the files MUST BE unpacked before archiving and mdat file
  837. MUST BE added into archive first!
  838.  
  839.  
  840. Archiver commands
  841. -----------------
  842.  
  843. LhA -> c:lha >T:virtahepo p -qMNIQw "%s"
  844. °°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°
  845. c:lha        the program lha and complete path
  846. >RAM:virtahepo    A file where decompressed data will be stored.
  847.         Can be placed for example on HD (>dh1:temp/rhinocerus)
  848. p        Print files to stdout, in other words in file after the '>'.
  849. -qMNIQw        q    be quiet
  850.         M    no autoshow files
  851.         N    no progress indicator
  852.         I    ignore LHAOPTS variable
  853.         Qw    disable wildcards
  854. "%s"        The %s will be replaced with archive name.
  855.  
  856.  
  857. LZX -> C:execute s:HiP-script "%s" T:HiP-temp c:lzx ;>T:HiP-temp/virtahepo
  858. °°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°
  859. This is a tricky one.  Thanks to Gavin Hamill for the illuminating script
  860. (which HiP-script is based on).  'S:HiP-script' will make a temp dir
  861. 'T:HiP-temp' and extract the LZX archive there (c:lzx is the full path &
  862. name for lzx).  Then the file that was extracted is renamed to 'virtahepo'
  863. so that HiP can recognize and load it.  Note that the
  864. ';>T:HiP-temp/virtahepo' statement in the commandline is there just to show
  865. HiP where to look for the file.  Also note that the temp dir is not deleted
  866. afterwards.
  867.  
  868. Change 'c:lzx' to where lzx resides in your system!  Same thing for
  869. 's:HiP-script'.
  870.  
  871. 'S:SPAT' script file is required!
  872.  
  873. If you want the temp dir somewhere else than T:, change all 'T:HiP-temp's
  874. in the commandline.
  875.  
  876. Example to extract LZX archives to HD:
  877. C:execute s:HiP-script "%s" dh1:temp/dung ;>dh1:temp/dung/virtahepo
  878.  
  879.  
  880.  
  881. Zip -> C:unzip >T:virtahepo -cqq "%s"
  882. °°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°°
  883. -cqq    c    extract files to stdout
  884.     qq    be very quiet
  885.  
  886.     
  887. You can also use other programs for uncompressing.
  888. Example for LhA:    c:lhx >RAM:virtahepo p -qMNQw "%s"
  889.  
  890.  
  891.  
  892.  
  893.  
  894. PS3M settings
  895. -------------
  896. This replayer (by Guru/S2) can play S3Ms, XMs, FTMs, MODs and MTMs.
  897.  
  898. State/buf (System state / buffer size):
  899.     Pri -10 to +10
  900.           Set priority for the system friendly player process.
  901.     Killer    Disable system and stop most of the DMA to get the best
  902.                   quality. The blue flickering represents free CPU time.
  903.           Stop playing by pressing mousebuttons.  No enforcer!
  904.     Buffer    4kB, 8kB, 16kB, 32kB mixing buffer size.
  905.           Smaller buffer gives faster response, but decreases the
  906.           "backup" buffer possibly causing more "skipping".
  907.  
  908. Play mode:     Playing modes (see the PS3M doc for more info, or just
  909.                 try them out)
  910.  
  911. Stereo:
  912.     Works only with Surround play mode! 
  913.     You can adjust the strength of stereo. 0% is mono, 100% is stereo,
  914.     and 50% is the normal surround value.
  915.  
  916. Volume boost:
  917.     Makes the sound clearer and louder (use when 8 or more channels)
  918.     You will hear the change almost immediately.
  919.  
  920. Mrate (mixing rate):
  921.     Mixing rate in kHz.
  922.  
  923.  
  924.  
  925.  
  926.  
  927.  
  928.  
  929.  
  930. Save, Use, Cancel
  931. -----------------
  932. I guess you can guess these.  If you close the prefs window it's same as
  933. 'Cancel'ling.  The prefs-file will be saved in the S:  directory.
  934.  
  935.  
  936.  
  937.  
  938.  
  939. ******************************************************************************
  940. *                        *** Command line options ***                  *
  941. ******************************************************************************
  942.  
  943. Add modules to the list
  944. -----------------------
  945. HiP  <file2> <file2> ... <file16>
  946.  
  947. All the files will be added to the list and the first added one will be
  948. played.
  949.  
  950.  
  951. Load a module program
  952. ---------------------
  953. HiP PRGM <module program>
  954.  
  955. The program will be loaded and the first module will be played.  If the
  956. playmode is set as 'Modules in random order', then a random module will be
  957. picked and played.  Existing list will be cleared.  (The PRGM-keyword is
  958. not necessary, but is faster in terms of disk activity.)
  959.  
  960. All filenames must be entered with full paths!
  961.  
  962. *** NOTE:  You can also do these things while HiP is ALREADY running!  This
  963. allows you to use HiP as a command line module player.  Eg in Directory
  964. Opus it makes a good play button.
  965.  
  966.  
  967. Hide on startup
  968. ---------------
  969. HiP HIDE [other parameters]
  970.  
  971. HIDE makes HiP even more a command line player.  It will force HiP not open
  972. it's window.  Also reqtools.library is not needed (it will be loaded later
  973. if the window is opened).  HiP can be controlled with hotkeys (if enabled)
  974. and/or ARexx if the window is not opened.
  975.  
  976.  
  977. Quit
  978. ----
  979. HiP QUIT
  980.  
  981. If there is already one HiP running, it will be terminated.
  982.  
  983.  
  984.  
  985. ******************************************************************************
  986. *                              *** ARexx ***                           *
  987. ******************************************************************************
  988.  
  989. HiP has an ARexx port 'HIPPOPLAYER'.  It will be initialized at startup if
  990. RexxMaster is found running.  There are some simple ARexx-examples in the
  991. ARexx-dir.
  992. *** Note!  The ARexx-interface is not very thoroughly tested.
  993. If there appears any misbehaviour, tell me please!
  994.  
  995. Parameters in [] may be omitted, parameters in <> may not!
  996.  
  997. CHOOSE <num>        Choose file number <num> in list.
  998. ADD [file]        Add file [file] to list. If not specified, open
  999.             file requester.
  1000. DEL            Delete chosen file from list.
  1001. CLEAR            Clear list.
  1002. MOVE <num>        Move chosen module after file number <num>.
  1003. INSERT <file>        Insert file <file> after chosen file.
  1004. SORT            Sort file list.
  1005. LOADPRG [file]        Load program [file]. If not specified, open
  1006.             file requester.
  1007.  
  1008. PLAY [file]        If [file] is given, clear list and play it. Otherwise
  1009.             play chosen file. If there's no files in list then
  1010.             open file requester.
  1011. EJECT            Stop playing and free current module.
  1012. STOP            Stop playing.
  1013. CONT            Continue playing after stop.
  1014. SONGPLAY <num>        Play song number <num>.
  1015. RANDPLAY        Pick a random module and play it.
  1016. FFWD            Jump forwards in song.
  1017. REW            Jump backwards in song.
  1018. VOLUME <vol>        Set volume <vol> (0-64).
  1019.  
  1020. QUIT            Close all windows and exit program.
  1021. ZIP <0/1>        0: small main window, 1: normal main window
  1022. HIDE <0/1>        0: hide main window, 1: show main window
  1023. PUBSCREEN <screen>    Set public screen for HiP's windows & requesters.
  1024.             Note that this is case sensitive.
  1025.  
  1026. TIMEOUT <secs>        Set timeout (0-600 secs).
  1027. PS3MBOOST <value>    Set PS3M volume boost (0-8).
  1028. PS3MMODE <mode>        Set PS3M mode. 1: surround, 2: stereo, 3: mono,
  1029.             4: real surround, 5: 14-bit stereo.
  1030. PS3MRATE <rate>        Set PS3M mixing rate (5000-56000).
  1031.  
  1032. LOADPREFS <file>    Load prefs file. Restart HiP with new settings.
  1033.             HiP only saves prefs to S:HippoPlayer.prefs, so
  1034.             you have to collect them manually somewhere for
  1035.             ARexx-usage.
  1036.  
  1037. SAMPLES            Open sample name window.
  1038.  
  1039. GET <xxxx>    With this command you can get different information from HiP.
  1040.         The <xxxx> can be one of the following:
  1041.         xxxx:    result:
  1042.         PLAY    0 if not playing, 1 if playing.
  1043.         CFIL    Number of chosen file, 0 if none chosen.
  1044.         NFIL    Number of files in list.
  1045.         CURR    Number of loaded module.
  1046.         NAME    Module name.
  1047.         TYPE    Module type.
  1048.         CNAM    Name of chosen file.
  1049.         CSNG    Current song number.
  1050.         NSNG    Number of songs available.
  1051.         CSPO    Current song position.
  1052.         MSPO    Maximum song position.
  1053.         FNAM    Full name of loaded file.
  1054.         COMM    Comment for loaded file.
  1055.         SIZE    Size of loaded file.
  1056.             
  1057.  
  1058. ******************************************************************************
  1059. *                              *** Developers ***                            *
  1060. ******************************************************************************
  1061.     
  1062. HiP has a tiny interface for programmers who want to c0de some scopes of
  1063. their own.  Closer inspection will reveal that this a very badly designed
  1064. quick hack.  I have done no testing whatsoever, so any response would be
  1065. nice :)
  1066.  
  1067. What you do is FindPort() "HiP-Port".  If unsuccesful, HiP is not running.
  1068. Otherwise, you get the pointer to HippoPlayer's port.  It looks like this:
  1069.  
  1070.     STRUCTURE       HippoPort,MP_SIZE
  1071.     LONG            hip_private1    * Private..
  1072.     LONG            hip_reserved1   * Private..
  1073.     LONG            hip_reserved2   * Private..
  1074.     BYTE            hip_mainvolume  * Main volume, 0-64
  1075.     BYTE            hip_play        * If non-zero, HiP is playing
  1076.     BYTE            hip_playertype  * 33 = Protracker, 49 = PS3M
  1077.     *** Protracker ***
  1078.     BYTE            hip_PTtrigger
  1079.     APTR            hip_PTch1       * Protracker channel data for ch1
  1080.     APTR            hip_PTch2       * ch2
  1081.     APTR            hip_PTch3       * ch3
  1082.     APTR            hip_PTch4       * ch4
  1083.     *** PS3M ***
  1084.     APTR            hip_ps3mleft    * Buffer for the left side
  1085.     APTR            hip_ps3mright   * Buffer for the right side
  1086.     LONG            hip_ps3moffs    * Playing position
  1087.     LONG            hip_ps3mmaxoffs * Max value for hip_ps3moffs
  1088.  
  1089.  
  1090.     *** PT channel data block
  1091.     STRUCTURE       PTch,0
  1092.     LONG            PTch_start      * Start address of sample
  1093.     WORD            PTch_length     * Length of sample in words
  1094.     LONG            PTch_loopstart  * Start address of loop
  1095.     WORD            PTch_replen     * Loop length in words
  1096.     WORD            PTch_volume     * Channel volume
  1097.     WORD            PTch_period     * Channel period
  1098.     WORD            PTch_private1   * Private...
  1099.  
  1100.  
  1101. *** PT hints ***
  1102.  
  1103. Each channel has a bit reserved in hip_PTtrigger.  Everytime one of these
  1104. bits is set, a new sample starts to play in the channel.  Feel free to
  1105. clr.b this byte after reading.  Bit 0 = channel 1, bit 1 = channel 2, etc.
  1106.  
  1107. PTch_start is updated so that it always points to the current playing
  1108. position of the sample.  PTch_length will decrease until it hits zero.
  1109. When this happens, PTch_start is replaced with PTch_loopstart and
  1110. PTch_length is replaced with PTch_replen.  In other words, the sample
  1111. loops.  If the loop size is 2 bytes (PTch_length = 1, PTch_replen = 1),
  1112. the sample stops (plays null).  Don't read past the sample data; always
  1113. check PTch_length.
  1114.  
  1115. *** PS3M hints ***
  1116.  
  1117. hip_ps3moffs is an offset from the start of the buffers pointing to the
  1118. current playing position.  Don't read past bufferstart+hip_ps3mmaxoffs.
  1119.  
  1120.  
  1121.  
  1122. ******************************************************************************
  1123. *                            *** Known bugs ***                  *
  1124. ******************************************************************************
  1125.  
  1126. 1.  Main window refresh may get dangerously confused when when zipping
  1127. window via zoomgadget while loading module/program, saving program or
  1128. sorting.  One zip is allowed, two is too much, so be careful.
  1129.  
  1130. 2.  Timeout and alarm don't work if there's no timer visible in the
  1131. titlebar
  1132.     
  1133. 3.  Some Fred modules cause enforcer hits.
  1134.  
  1135. 4.  Sometimes opening the sample name window causes a guru.
  1136.  
  1137. 5.  All subsongs are not played if there is only one module in the list.
  1138.  
  1139. 6.  The scopes follow the sample data too fast on screenmodes with higher
  1140. refresh rate than 50hz.
  1141.  
  1142. 7.  Sonic Arranger tunes tend to crash sometimes.
  1143.  
  1144.  
  1145. ** NOTE:  I've been getting complaints about the gadgets in HippoPlayer,
  1146. mostly because the pressed gadgets look ugly on 8+ color screens.  I use
  1147. STANDARD gadgets in HiP, the ugly coloring is AmigaOS's fault, not mine.
  1148. If someone knows how to correct the problem - some other way than using any
  1149. of those terrible GUI libraries - please tell me.
  1150.  
  1151.  
  1152.  
  1153. ******************************************************************************
  1154. *                              *** History ***                           *
  1155. ******************************************************************************
  1156.  
  1157. Read this!  Some things are not mentioned elsewhere!
  1158.  
  1159.  
  1160. v1.00    Works...
  1161.     I couldn't check the bug I suspected because a friend of
  1162.         mine wanted to upload the program everywhere. This bug causes
  1163.     memory to get fragmented when loading XPK files.
  1164.  
  1165. v1.01    No major bugs left..
  1166.  
  1167. v1.10   · Removed some small bugs here and there.
  1168.     · A description of the gadgets in the program.
  1169.     · Support for multisong Protracker modules.
  1170.         · Replayer which plays S3M/FTM/MOD/MTM modules, by Guru (jee).
  1171.     · Load/save module program.
  1172.     · Commandline options.
  1173.     · Four scopes.
  1174.     · Communication between most of HiP's processes. All windows except
  1175.           reqtools requesters will be closed when the main window is closed.
  1176.     · Window positions will be saved in the prefs-file. Also the state
  1177.       of the scope (on/off) will be saved.
  1178.     · Doesn't interfere with serial transfers on slower Amigas anymore.
  1179.           Exceptions are MED, TFMX, The Player.
  1180.           They use their own way of timing (level 6 here I come).
  1181.         · Works correctly on both PAL and NTSC.
  1182.     · Behaves more intelligently with bigger fonts, eh...
  1183.     · If playingmode is 'Random', Next/Prev will randomize a new
  1184.       module instead of what they would normally do.
  1185.     · Removed a bug in ProTracker's arpeggio.
  1186.     · Newlook propgadgets on Kickstarts 2.0+.
  1187.     · FutureComposer end-detect.
  1188.  
  1189. v1.11    · Now should work on 50/60/72Hz screens correctly.
  1190.     · New icon (less eyesore?).
  1191.     · Filter control in Prefs.
  1192.     · Doesn't try to open windows over screen's borders.
  1193.     · Info window, in which an option to show samplenames.
  1194.     · TFMX channel autodetect.
  1195.     · New PS3M -> Mixingrate: 5-56 kHz, volumeboost: 0-8
  1196.     · Lotsa fixes'n stuff.
  1197.  
  1198. v1.12 (19.7.1994)
  1199. -----------------
  1200.     · Fixes'n stuff part 2.
  1201.     · New scope: Frequency analyzer
  1202.     · More stuff in info window.
  1203.     · New formats: The Holy Noise, MED 5-8 channels.
  1204.     · Executable size (and memory usage) reduced.
  1205.       Achieved this by packing nearly all the replayers.
  1206.     · Removed a bug that caused PT vibratos to disappear. This bug
  1207.       was created when I removed the arpeggio-bug. Hmm..
  1208.     · More informative loading phase.
  1209.     · Enables/disables gadgets according to current replayer.
  1210.     · New prefs design.
  1211.     · Modulebox can now contain 8 names.
  1212.     · Titlebar information printed with SetWindowTitles().
  1213.     · PT modules can be played from FAST RAM.
  1214.     · End-detect: JamCracker, Oktalyzer, SoundMon v2.0.
  1215.  
  1216. v1.14 (30.7.1994)
  1217. -----------------
  1218.     · Fixed a bug in 'del' (caused a crash sometimes).
  1219.     · Almost full keyboard control.
  1220.     · New formats: Delta Music v2.0, Sonic Arranger.
  1221.     · Some enchancements in the filebox and in the slider.
  1222.     · PS3M now frees ALL buffers needed for playing.
  1223.     · LhA, Zip & Gzip compatibility.
  1224.     · Added a clock (titlebar info).
  1225.  
  1226. v1.15 (5.8.1994)
  1227. ----------------
  1228.     · A couple of fixes here and there.
  1229.     · Next/prev working fine again.
  1230.     · Added a key for random play.
  1231.  
  1232. v1.16 (12.8.1994)
  1233. -----------------
  1234.     · LhA/Zip/Gzip filehandling much better.
  1235.     · A bug in samplenamesroutine fixed.
  1236.     · PS3M priority reduced from 2 to 0.  
  1237.     · PS3M system friendly mode end-detect (S3M, FTM, MOD, MTM).
  1238.     · Show free memory in titlebar.
  1239.     · SoundMon v2.0 bug fixed.
  1240.     · Stringgadgets' fontbug corrected (hopefully).
  1241.     · Volumeboost controlled with propgadget.
  1242.     · Scope priority from -5 to -30.
  1243.     · Priority selector in prefs (for mainprogram).
  1244.     · Startup errormessages.
  1245.     · Memory usage reduced 5kB compared to v1.15
  1246.  
  1247. v1.17 (?.8.1994)
  1248. ----------------
  1249.     · Some fixes.
  1250.     · Numerous bugs seemed to appear in v1.16. Hunt in progress..
  1251.       Removed one in TFMX 7ch interface.
  1252.       SoundMon v2.0 bug removed (again, was not fixed in v1.16).
  1253.  
  1254. v1.18 (22.8.1994)
  1255. -----------------
  1256.     · Bughunt continues.
  1257.       Several removed and among them one that possibly scrambled memory.
  1258.     · Non-existent doublebuffering changed to fade volume.
  1259.  
  1260. v1.19 (?.?.1994)
  1261. ----------------
  1262.     · No volume fading when tune ends while using randomplay.
  1263.     · PS3M priority changed again, this time to +1.
  1264.     · Windowcoloring.
  1265.     · PT replayer still had bugs left: vibrato & tremolo were too
  1266.       strong! Fixed.
  1267.     · No more H.P.Lovecraft.
  1268.  
  1269. v1.20 (2.9.1994)
  1270. ----------------
  1271.     · LhA/Zip/Gzip enchanced and some bugs removed.
  1272.     · New backround color looked wrong on 8+ color screens. Fixd.
  1273.     
  1274. v1.23 (?.9.1994)
  1275. ----------------
  1276.     · SID support! Now you can listen all those cool C64 tunes!
  1277.     · Samplenames => Moduleinfo. Now also info about SID modules.
  1278.     · Open moduleinfo window also by pressing left mousebutton on the
  1279.       name/type box or pressing 'I'.
  1280.  
  1281. v1.25 (13.9.1994)
  1282. -----------------
  1283.     · Major changes in LhA/Zip/Gzip interface. Should work OK, finally.
  1284.       The version in v1.15 onwards really acted strange!
  1285.     · Stereoscope for PS3M, might not work very well though.
  1286.  
  1287. v1.28 (21.10.1994)
  1288. ------------------
  1289.     · The timer will wrap properly now.
  1290.     · All replayers excluding PT and PS3M didn't work on 68040 because
  1291.       of the copyback-cache. Should work OK now.
  1292.     · Timer and pos/len are now shown at the same time.
  1293.     · Moduleinfo reorganized. All PT samplenames in same window.
  1294.  
  1295. v1.30 (7.11.1994)
  1296. -----------------
  1297.     · Fixed a very silly bug (changed the volume depending on the size
  1298.       of the module being played!).
  1299.     · New scope: SID.
  1300.     · Improved Shell interface. Allows HiP to be more a commandline
  1301.       moduleplayer.
  1302.     · Time, pos/len and song number shown at the same time.
  1303.     · The timer uses DateStamp().
  1304.     · Requesters use the same font as the mainprogram.
  1305.     · Some gfx bugs fixed.
  1306.     · NEW VERSION OF THE PS3M! Mixingroutines for 68000 and 68020++. 
  1307.       Faster and more beautiful! Stop/cont/fastforward/rewind etc.
  1308.     · Two more scopes for PS3M.
  1309.     · Removed The Holy Noise.
  1310.     · The Player version increased to v6.1A.
  1311.     · When a module jumps backwards it is considered ended. Works with
  1312.           PS3M and ProTracker.
  1313.  
  1314. v1.31 (12.11.1994)
  1315. ------------------
  1316.     · Several not so serious bugs fixed.
  1317.     · After playing TFMX 7c tunes, programs using lev4 interrupt crashed
  1318.       (like PS3M). Fixed.
  1319.     · Some Prefs-window reorganization.
  1320.     · Hippoicon by Tommi Lindström (Hawk/Hippopotamus Design).
  1321.         
  1322. v1.32 (18.11.1994)
  1323. ------------------
  1324.     · Pressing "Play" on the module currently being played caused
  1325.        HiP to load next module (in list-playmodes).
  1326.     · Module program directory saved in the prefsfile.
  1327.     · Samplenameviewer works OK, no more garbage.
  1328.     · Some PS3M bugs removed (stop-eject=no guru).
  1329.     · ProTracker replayer can cope with a bit mutated modules too.
  1330.  
  1331. v1.33 (7.12.-94)
  1332. ----------------
  1333.     · Unofficial release...
  1334.  
  1335. v1.34 (11.12.-94)
  1336. -----------------
  1337.     · Numerous fixes here and there.
  1338.     · BPSoundMon enchancements: position/length, ffwd and rew, volume.
  1339.     · More info in the infowindow.
  1340.     · Number of subsongs checked: TFMX, TFMX 7c, Fred.
  1341.     · When there's no "moduleinfo" available and the left mousebutton is
  1342.       pressed on the left third of the textbox, infowindow will be opened.
  1343.     · TFMX & TFMX 7c enchancements: position/length, ffwd and rew,
  1344.           songend.
  1345.     · Sometimes PS3M didn't start to play in killermode (my fault). Fixed.
  1346.     · New design in the main window.
  1347.     · Amount of files showed in the main window now selectable.
  1348.     · Amount of songs (if available) shown after current songnumber.
  1349.     · Some samplenameviewer bugs removed.
  1350.     · IMPORTANT: Versions 1.30 to 1.33 didn't work on A500 or A600,
  1351.       in other words on 68000. This version should work OK.
  1352.  
  1353. v1.35 (2.1.-95)
  1354. ---------------
  1355.     · Samplenameviewer still had a bug! Vanquished it!
  1356.     · New scope for ProTracker: patternscope.
  1357.     · Prefs: doubleclick, center name, some gfx changes,
  1358.              multiple choice requesters with RMB.
  1359.     · Stringgadgets in prefs will only accept fonts of size 8 or
  1360.       smaller. No more trash.
  1361.      · Aargh! Stupid LhA command mistake corrected! %s" -> "%s" !
  1362.     · ProTracker replayer caused Enforcer hits! Fixed...
  1363.     · Module name shown in the title of the samplenamewindow.
  1364.     · Removed that little window when opening LhA, zip and gzip files.
  1365.     · ProTracker: Songnumber not shown and NS/PS gadgets disabled
  1366.       when there's only one song in module (most modules have only
  1367.       one song).
  1368.     · Removed the SID scope. It was "illegal" as it used some
  1369.           undocumented functions in the playsid.library. 
  1370.     · Removed the PT fastram player. It was terrible.
  1371.     · TWO SERIOUS BUGS REMOVED! When playing ProTracker modules
  1372.           (or alike), my PT replayer and Guru's PS3M sometimes
  1373.       scrambled system's memorylist! Aargh (part 2)!!
  1374.     · Found more bugs in the PT replayer. I have been using it for
  1375.       two years and there's still bugs left... Some effect commands
  1376.           weren't played correctly while notedelaying (EEx). Fxd.
  1377.     · Player v6.1A: Stop/cont working again. 
  1378.  
  1379. v1.38 (9.1.1995)
  1380. ----------------
  1381.     · Oktalyzer modules played wrong on non-50Hz screens. Fixed.
  1382.     · One TFMX 7c interface bug removed.
  1383.     · Added startup play.
  1384.     · Added load & play module or program by pressing the function
  1385.       keys.
  1386.     · No need to have PRG in front of the filename anymore when loading
  1387.       programs via commandline.
  1388.     · Programs can be loaded with New/Play.
  1389.     · File & directoryrequesters use the font defined in system's prefs.
  1390.     · Fixed one bug in PS3M (divide by zero-exception when playing S3Ms).
  1391.  
  1392. v1.39 (12.1.1995)
  1393. -----------------
  1394.     · Quick bug fix! Damn I'm stupid! v1.38 doesn't work on 68000,
  1395.       this version does.
  1396.     · The main window is now an AppWindow! Now you can drop modules and
  1397.       module programs on the window and they get loaded and played.
  1398.       This feature is for kick2.0+ only.
  1399.  
  1400. v1.40 (21.1.1995)
  1401. -----------------
  1402.     · The terrible fastramplayer is back. Works somehow.
  1403.     · Prefs: Show module name in titlebar, set playing time (timeout).
  1404.     · Works better with arc-handler (ARC:).
  1405.     · Killed a killer bug in the PT replayer.
  1406.     · LhA enchancement: Load both TFMX mdat and smpl files from one
  1407.       archive.
  1408.  
  1409. v2.00 (19.3.1995)
  1410. -----------------
  1411.     * ARexx support
  1412.     * Public screen support
  1413.     * Keyboard control changes: you can use the keys without activating
  1414.       the window first by pressing lamiga-lshift-control-<key>.    
  1415.     * New PS3M: support for Fasttracker 2 (XM) modules.
  1416.     * Improved outlook.
  1417.     * Patched playsid.library so that it's possible to play SID-tunes
  1418.       also on kick1.2/1.3.
  1419.     * Prefs: continue on error, hotkeys, nasty audio, doublebuffering,
  1420.              program dir selector.
  1421.     * Main window: move, insert, sort (hidden under insert)
  1422.     + Timeout has now two modes.
  1423.     + You can 'Add', 'New' and 'In' directories.
  1424.     + New The Player v6.1a replayer.
  1425.     + PT replayer causes no serialstops.
  1426.     + Command line: HIDE, QUIT.
  1427.     + Prefs: PS3M volume boost has immediate effect on music.
  1428.     + Included some support progs.
  1429.     · PSID-files are loaded in public mem if possible.
  1430.     · HiP can be hidden with lamiga-lshift-control+h.
  1431.     · Key for toggling current scope.
  1432.     · Uses less CPU than v1.40 when not playing.
  1433.     · Filebox routines optimized & jump scroll with shifts.
  1434.     · New algorithmic random generator (thanks Thomas!).
  1435.     · If PT replayer is set as 'Fastram', modules smaller than
  1436.       the replayer's chip buffers (256kB) will be loaded in chipram.. :)
  1437.     · Recognizes .Lha .lHa .lHA like suffixes too.
  1438.     · Only 8 channel Oktalyzer-tunes are loaded in fast ram.
  1439.     · Faster gadget disabling/enabling (OffGadget() was sloooow).
  1440.     · Fixed and enforcer hit when toggling prefs window.
  1441.     · Bug fix in the doc: the player table had some wrong info.
  1442.     · General good stuff and nice things.
  1443.         
  1444. v2.05 (3.5.1995)
  1445. ----------------
  1446.     * Some fixes and improvements here and there.
  1447.     * Keyboard: K/L swapped back with ARROW LEFT/ARROW RIGHT.
  1448.             Added lot's of functions to number pad.
  1449.     * MED: multisong support, song position/song length, forward,
  1450.            rewind, songend. Also no lib-error bug removed.
  1451.     * New PT FAST RAM replayer which uses only 1024 bytes of CHIP RAM.
  1452.     * Replaced GZip support with LZX.
  1453.     * New music formats: Mark II, Maniacs of Noise, David Whittaker,
  1454.                  BP SoundMon v3.0 (v2.2?).
  1455.     * Prefs: VBlank timing selector, switch for scope bars.
  1456.     - Added zoom-gadget (kick2.0+).
  1457.     - Directories are added recursively (kick2.0+).
  1458.     - Fix: PS3M with killer mode caused crashes (my fault).
  1459.     + Added Humble mode for PS3M: priority = -3.
  1460.     + PS3M mixing buffer size can be as high as 64kB.
  1461.     - Fix: randomgenerator bugged heavily (jammed the machine).
  1462.     - Fix: PT replayer patterndelay + volslide.
  1463.     - Double buffering: if not enough memory, dump current module and
  1464.       try again.
  1465.     - When adding modules via AppWindow or commandline they are
  1466.       added to the end of the list, instead of first clearing the list
  1467.       and then adding.
  1468.     - Filter status saved in prefs file. Wasn't saved in prev. versions!
  1469.     - File selection bar is always kept visible.
  1470.     - Better init error handling.
  1471.     - The sort routine is six times faster than before.
  1472.     - Priority affects all processes excluding HippoScope.
  1473.     - Windows adapt with different border sizes (works with sysihack).
  1474.     - Titlebar info: clock and free mem shown at the same time.
  1475.     - Keys works from prefs window too.
  1476.     - A new icon by Cyclone.
  1477.  
  1478. v2.06 (19.5.1995)
  1479. -----------------
  1480.     * External player group.
  1481.     + Selectable 8x8 pixel font (kick2.0+).
  1482.     + Title of the sample name window now contains name, comment and size.
  1483.     + Timing is done with CIAA timer. Serialstops should finally
  1484.       be gone now..
  1485.     - Hide had a big bug! Terminated it. (Hi Yolk! (I'm an idiot))
  1486.     - Fixed a bug in HiP-script (LZX extraction).
  1487.     - Pressing 'Use' in prefs window will also change the scope.
  1488.     - Fade volume on exit.
  1489.     - A new icon by Roman Patzner.
  1490.     - Fixed a bug in ZIP (ARexx).
  1491.     - Some PS3M bugs removed.
  1492.     - Some fixes...
  1493.  
  1494. v2.07 (26.6.1995)
  1495. -----------------
  1496. Bug fixes:
  1497. - Continue on error no longer causes neverending load and fail-loops.
  1498. - PS3M buffer max size reduced to 32kB (64kB didn't always work well).
  1499. - Removed a bug in the font selector (no more memory and time waste).
  1500. - 'New' clears the list only if some mods were selected.
  1501. - PT fastram player bug removed (the one that jammed the machine).
  1502. - Timeout works with doublebuffering now.
  1503. - LhAed TFMX mdat+smpl loading with doublebuffering had a really
  1504.   serious bug. Killed it.
  1505. - Another bug with LhA and TFMX removed. Probably caused crashes if
  1506.   the length of the MDAT file was odd.
  1507. - Pos/len and NS/PS didn't work with MED MMD2 modules (I don't have the
  1508.   format description!), so I removed them.
  1509. - ARexx command PLAY was documented misleadingly. Corrected.
  1510.     
  1511. Improvements:
  1512. - Little fixes and improvements here and there.
  1513. - Find files in list.
  1514. - Alarm clock! :)
  1515. - New music formats: Old Soundtracker, Hippel, Hippel-COSO.
  1516. - SID-info and sample name windows update when a new module is loaded.
  1517. - Totally new cycle gadget mult.choice requester with right mousebutton!
  1518. - 'Center name' improved so that doubleclicking is more easier.
  1519. - Option to show duration of Protracker modules.
  1520. - MED-player will try to allocate the serial port for playing MIDI
  1521.   modules.
  1522. - New PS3M replay version: 0.951. Lot's of bugs removed.
  1523. - Moved PS3M into player group.
  1524. - Config file for PS3M, like the one in PS3M the player by Guru.
  1525. - PS3M Surround stereo slider.
  1526. - PS3M Humble and Friendly modes replaced with priority selector.
  1527. - PS3M now uses CIAA timer which doesn't cause serial stops like CIAB.
  1528.   (The CIAB can be selected in the PS3M config if the user really wants.)
  1529. - New DMA wait routine for PT replayer by Peter Kunath.
  1530. - Changing scope will have immediate effect.
  1531. - No pop-screen-to-front at startup anymore.
  1532. - Improved LhA, LZX and Zip file indentification.
  1533. - Tools: WaitHiP, HiPlay, PSIDcomment.
  1534. - New MWB icons by Roman Patzner.
  1535. - New NewIcons icon by David Wiles.
  1536. - HiP.guide by Tuomas Lukinmaa.
  1537.  
  1538. v2.08 (21.7.1995)
  1539. -----------------
  1540. Bug fixes:
  1541. - 'Play Module once' bug removed.
  1542. - Changed to use the old DMA wait in the PT replayer because the new
  1543.   one didn't always work fine.
  1544. - Added RMB listselector for main program priority.
  1545. - Tried to play MED mods even when an init error occured. Fixd.
  1546. - PT module duration calculation routinetion [:-] locked up in some
  1547.   situations.  Fxd.
  1548. - PT module end-detect fix.
  1549. - PS3M configuration file parser had a bug.  Messed up priorities with
  1550.   killer mode.  Fd.
  1551. - Doublebuffering works with dropped-icon modules.
  1552. - Dropped modules get played immediately even with random play.
  1553. - PSID file identification with .info now recognizes more files.
  1554. - Crashed when couldn't open font.  F.
  1555. - Some problems fxd with song names and PS3M.
  1556. - 'Continue on error' failed with unknown modules.
  1557. - PT sampleoffset now actually works 100% correctly.  Hi Yolk & Guru!  :)
  1558. - Recognizes *.LZH.
  1559. - Major bug removed in random play..
  1560.  
  1561. Improvements:
  1562. - Added mouse waitpointer.
  1563. - Better MarkII, Hippel and Hippel-COSO identifying.
  1564. - Included a HiP brush by Roman Patzner.
  1565. - No volume fade on exit.
  1566. - Volume fade works a bit better with PS3M.
  1567. - Scope window is closed when no data is available.
  1568. - List selector in prefs can be cancelled by clicking outside the window.
  1569. - If a module that is played contains subsongs, all of them are played
  1570.   before next module is loaded.  Works with play modes 'List repeatedly' &
  1571.   'List once' and with end-detectable modules, and with timeout.
  1572.  
  1573. v2.09 (28.7.1995)
  1574. -----------------
  1575. AARGH!!  v2.08 had an old version of the PS3M!  :-(((((((((( This version
  1576. has the new one (same as the version in v2.07)...
  1577.  
  1578. Improvements:
  1579. - New scope
  1580. - A little change in PatternScope concerning VU-meters.
  1581.  
  1582. v2.10 (2.9.1995)
  1583. ----------------
  1584. Bug fixes:
  1585. - Some little ones here and there.
  1586. - DMA wait bug fixes: Protracker, JamCracker, Soundmon, Hippel-COSO.
  1587.   Lost notes on screenmodes with high refresh rate.
  1588. - Enforcer hit with right mousebutton removed.
  1589. - Commandline stuff bugs removed.
  1590. - Enforcer hits with scopes fixed.
  1591.  
  1592. Improvements:
  1593. - List dividers.
  1594. - Filename prefix cut.
  1595. - Early load.
  1596. - New fast forward mode.
  1597. - RMB function indicators (DOpus style).
  1598. - New Prefs organization.
  1599. - Changed the position of 'cursor' in patternscope.
  1600. - IFF 8SVX sample playing.
  1601. - Added SAMPLES ARexx command.
  1602. - ARexx command PLAYSONG bugged. Replaced with SONGPLAY that works.
  1603. - Little interface for programmers.
  1604. - Thickened the quadra/stereoscopes.
  1605. - Moved the info from the title of the sample window into the window itself.
  1606. - The position of the sample name window and the info window are saved.
  1607. - Sample windows not opened by the user no longer inactivate the main
  1608.   window.
  1609. - Join module lists with RMB and 'Lp'.
  1610. - Improved sort routine:
  1611.    * Sorting accuracy 24 characters
  1612.    * Divided sections are sorted separatedly
  1613.    * Prefix cut compatible
  1614.    * Not very fast. I'm still using bubble sort...
  1615. - Skip setting of values in PS3M config file with ?'s.
  1616. - Included Filer-ARexx script by Janne Simonen.
  1617. - Increased PS3M maximum mixingrate from 56 kHz to 58 kHz after finding out
  1618.   it is actually possible.
  1619. - HippoScope for PS3M:  doubled the vertical pixel size, doubled the amount
  1620.   of pixels on 020+ Amigas.
  1621. - NOTE THIS:  The PRG keyword has been changed to PRGM!
  1622.  
  1623. v2.11 (6.9.1995)
  1624. ----------------
  1625. Bug fixes:
  1626. - Some little fixes.
  1627. - v2.10 had a test version Protracker replayer...  Argh!  :( Well it works
  1628. fine and is faster but doesn't always sound the same as the original
  1629. Protracker.  So back to the old replayer in this version.
  1630.  
  1631. Improvements:
  1632. - Scope opens again when possible.
  1633.  
  1634.  
  1635. ******************************************************************************
  1636. *                               *** Hellos ***                            *
  1637. ******************************************************************************
  1638.  
  1639. Jarno Paananen (Guru/Sahara Surfers)
  1640. - Hi my friend! Thanks very much for the PS3M and everything else!
  1641.  
  1642. Nico François
  1643.  - Thanks for the great reqtools.library!
  1644.  
  1645. Ron Birk & Per Håkan Sundell
  1646. - Thanks for making almost perfect SID-emulation.
  1647.  
  1648. Thanks:
  1649. -------
  1650. Peter Kunath (Delirium Softdesign), Henryk Richter (Buggs/Defect), Tommi
  1651. Lindström, Richard Harris, cYClone/nEW-dEAL^PSD PC, Roman Patzner, David
  1652. Wiles, Tuomas Lukinmaa (Tumu / BFB Team), Janne Simonen
  1653.  
  1654. Official beta testers:
  1655. ----------------------
  1656. Jarkko Kemppainen, Mikko Karvonen
  1657.  
  1658. Special hellos:
  1659. ---------------
  1660. Agust Arni Jonsson (Nemesis1), Mikael Grahn, Jari Karjalainen, Ivan
  1661. Wheelwright, Jani Kannisto, Thomas Gylfe, Arto Ikola, Tommi Lempinen
  1662.  
  1663. Hi:
  1664. ---
  1665. Paul Petershagen, Thomas Schuerger, Gavin Hamill, Aki Laukkanen, Stelios,
  1666. Markus Stenberg, Fred Brooker, Fredrik Elmqvist, Flame, Jobbo
  1667.  
  1668.  
  1669. Thanks to all the ones who have sent me registrations, bug reports &
  1670. suggestions!
  1671.  
  1672.  
  1673.  
  1674. ******************************************************************************
  1675. *                               *** About ***                           *
  1676. ******************************************************************************
  1677.  
  1678. HippoPlayer was made by using Asm-Ones v1.06/1.09/1.25.  Pure assembler
  1679. 100%+++.  Sourcecode length without any includes or play routines is about
  1680. 350kB.
  1681.  
  1682. Registrations, bug reports, comments & suggestions and C-64 warez are
  1683. welcome!
  1684.  
  1685.  Kari-Pekka Koljonen
  1686.  Torikatu 31
  1687.  40900 Säynätsalo
  1688.  Finland
  1689.  
  1690.  E-mail: kpkoljon@freenet.hut.fi 
  1691.  
  1692.  IRC:     K-P
  1693.  
  1694.  Finns phone: 941-3742699
  1695.